Skip to content

feat(web): Running shelf and header summary words for custom groups - #310

Merged
bk-agent-01 merged 3 commits into
stagefrom
t3/poha-running-shelf
Oct 13, 2026
Merged

bk-agent-01 merged 3 commits into
stagefrom
t3/poha-running-shelf

Conversation

@bk-agent-01

Copy link
Copy Markdown
Collaborator

Problem

In custom grouping, running sessions mix with sessions that need a decision. The group headers also do not say how many sessions ask a question or are unread while the group is open.

Change

  • A small Running switch next to the CUSTOM ▾ caption. It shows only in custom grouping and is off by default (a per-device preference in the grouping store).
  • When the switch is on, sessions that run (working, planning, monitoring) with nothing waiting on a human go to a Running shelf above Snoozed. The shelf is one flat list, newest activity first, and each row keeps a pill with its group name and colour.
  • A session with a question, approval or plan anywhere in its subtree stays in its group with its highlight.
  • Each custom group header now shows words such as 1 asking · 2 unread · 3 running when the group is open or closed. The running count includes the sessions that the shelf took.
  • Mobile ignores the new preference and does not change.

The mockup option that was approved in the session is "C + C", with a flat Running list and group pills.

All changed files are fork-owned, so the next upstream merge has no new conflicts.

How I tested

  • Unit tests in fork-owned files: packages/client-runtime/src/state/phaseSidebarGrouping.test.ts (shelf partition, header counts, setter and sanitize) and apps/web/src/components/sidebar/PhaseSidebarShelfDock.expbkt3.test.tsx (Running shelf open, collapsed, toggle). CI runs them. Policy blocks local test runs on dev-server-1.
  • The UI check runs on stagebkt3 after the merge.

🤖 Generated with Claude Code

…stom groups

In custom grouping, a small "Running" switch beside the group-by caption moves
sessions that run with nothing waiting on a human out of their groups into a
Running shelf, docked above Snoozed. The shelf is one flat list, newest
activity first, and each row keeps a pill naming its group. A session with a
question, approval or plan anywhere in its subtree stays in its group with
its highlight.

Every custom group header now says in words what it holds, open or closed:
"1 asking · 2 unread · 3 running". The running count includes the sessions
the shelf took, so the header still tells you which group they belong to.

The switch is a per-device preference (off by default) in the grouping store;
mobile ignores it.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@github-actions github-actions Bot added vouch:trusted PR author is trusted by repo permissions or the VOUCHED list. size:L labels Oct 13, 2026
bk-agent-01 and others added 2 commits October 13, 2026 12:33
…ead banner stays quiet

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@bk-agent-01
bk-agent-01 marked this pull request as ready for review October 13, 2026 13:05
@bk-agent-01
bk-agent-01 merged commit 9db4113 into stage Oct 13, 2026
25 of 26 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

size:L vouch:trusted PR author is trusted by repo permissions or the VOUCHED list.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant